<?php
/*
 * Copyright (c) 2017-2025 Tencent. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *    http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
namespace TencentCloud\Ocr\V20181119\Models;
use TencentCloud\Common\AbstractModel;

/**
 * RecognizeBrazilDriverLicenseOCR response structure.
 *
 * @method string getNOME() Obtain Name
 * @method void setNOME(string $NOME) Set Name
 * @method string getCatHab() Obtain Driving license type
 * @method void setCatHab(string $CatHab) Set Driving license type
 * @method string getCNHNumber() Obtain CNH number
 * @method void setCNHNumber(string $CNHNumber) Set CNH number
 * @method string getVALIDADE() Obtain Valid date
 * @method void setVALIDADE(string $VALIDADE) Set Valid date
 * @method string getQUALIFICATION() Obtain Qualification
 * @method void setQUALIFICATION(string $QUALIFICATION) Set Qualification
 * @method string getIDENTIDADE() Obtain ID number
 * @method void setIDENTIDADE(string $IDENTIDADE) Set ID number
 * @method string getCPF() Obtain CPF
 * @method void setCPF(string $CPF) Set CPF
 * @method string getNASCIMENTO() Obtain Birthday
 * @method void setNASCIMENTO(string $NASCIMENTO) Set Birthday
 * @method string getMEMBERSHIP() Obtain Membership
 * @method void setMEMBERSHIP(string $MEMBERSHIP) Set Membership
 * @method string getREGISTRO() Obtain Registration number
 * @method void setREGISTRO(string $REGISTRO) Set Registration number
 * @method string getOBSERVATIONS() Obtain Remark
 * @method void setOBSERVATIONS(string $OBSERVATIONS) Set Remark
 * @method string getIssueDate() Obtain Issue date
 * @method void setIssueDate(string $IssueDate) Set Issue date
 * @method string getLOCAL() Obtain Issue location
 * @method void setLOCAL(string $LOCAL) Set Issue location
 * @method string getBackNumber() Obtain Number in the back of the card
 * @method void setBackNumber(string $BackNumber) Set Number in the back of the card
 * @method string getAdvancedInfo() Obtain Field confidence
 * @method void setAdvancedInfo(string $AdvancedInfo) Set Field confidence
 * @method string getPortraitImage() Obtain PortraitImage base64
 * @method void setPortraitImage(string $PortraitImage) Set PortraitImage base64
 * @method string getRequestId() Obtain The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
 * @method void setRequestId(string $RequestId) Set The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
 */
class RecognizeBrazilDriverLicenseOCRResponse extends AbstractModel
{
    /**
     * @var string Name
     */
    public $NOME;

    /**
     * @var string Driving license type
     */
    public $CatHab;

    /**
     * @var string CNH number
     */
    public $CNHNumber;

    /**
     * @var string Valid date
     */
    public $VALIDADE;

    /**
     * @var string Qualification
     */
    public $QUALIFICATION;

    /**
     * @var string ID number
     */
    public $IDENTIDADE;

    /**
     * @var string CPF
     */
    public $CPF;

    /**
     * @var string Birthday
     */
    public $NASCIMENTO;

    /**
     * @var string Membership
     */
    public $MEMBERSHIP;

    /**
     * @var string Registration number
     */
    public $REGISTRO;

    /**
     * @var string Remark
     */
    public $OBSERVATIONS;

    /**
     * @var string Issue date
     */
    public $IssueDate;

    /**
     * @var string Issue location
     */
    public $LOCAL;

    /**
     * @var string Number in the back of the card
     */
    public $BackNumber;

    /**
     * @var string Field confidence
     */
    public $AdvancedInfo;

    /**
     * @var string PortraitImage base64
     */
    public $PortraitImage;

    /**
     * @var string The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
     */
    public $RequestId;

    /**
     * @param string $NOME Name
     * @param string $CatHab Driving license type
     * @param string $CNHNumber CNH number
     * @param string $VALIDADE Valid date
     * @param string $QUALIFICATION Qualification
     * @param string $IDENTIDADE ID number
     * @param string $CPF CPF
     * @param string $NASCIMENTO Birthday
     * @param string $MEMBERSHIP Membership
     * @param string $REGISTRO Registration number
     * @param string $OBSERVATIONS Remark
     * @param string $IssueDate Issue date
     * @param string $LOCAL Issue location
     * @param string $BackNumber Number in the back of the card
     * @param string $AdvancedInfo Field confidence
     * @param string $PortraitImage PortraitImage base64
     * @param string $RequestId The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
     */
    function __construct()
    {

    }

    /**
     * For internal only. DO NOT USE IT.
     */
    public function deserialize($param)
    {
        if ($param === null) {
            return;
        }
        if (array_key_exists("NOME",$param) and $param["NOME"] !== null) {
            $this->NOME = $param["NOME"];
        }

        if (array_key_exists("CatHab",$param) and $param["CatHab"] !== null) {
            $this->CatHab = $param["CatHab"];
        }

        if (array_key_exists("CNHNumber",$param) and $param["CNHNumber"] !== null) {
            $this->CNHNumber = $param["CNHNumber"];
        }

        if (array_key_exists("VALIDADE",$param) and $param["VALIDADE"] !== null) {
            $this->VALIDADE = $param["VALIDADE"];
        }

        if (array_key_exists("QUALIFICATION",$param) and $param["QUALIFICATION"] !== null) {
            $this->QUALIFICATION = $param["QUALIFICATION"];
        }

        if (array_key_exists("IDENTIDADE",$param) and $param["IDENTIDADE"] !== null) {
            $this->IDENTIDADE = $param["IDENTIDADE"];
        }

        if (array_key_exists("CPF",$param) and $param["CPF"] !== null) {
            $this->CPF = $param["CPF"];
        }

        if (array_key_exists("NASCIMENTO",$param) and $param["NASCIMENTO"] !== null) {
            $this->NASCIMENTO = $param["NASCIMENTO"];
        }

        if (array_key_exists("MEMBERSHIP",$param) and $param["MEMBERSHIP"] !== null) {
            $this->MEMBERSHIP = $param["MEMBERSHIP"];
        }

        if (array_key_exists("REGISTRO",$param) and $param["REGISTRO"] !== null) {
            $this->REGISTRO = $param["REGISTRO"];
        }

        if (array_key_exists("OBSERVATIONS",$param) and $param["OBSERVATIONS"] !== null) {
            $this->OBSERVATIONS = $param["OBSERVATIONS"];
        }

        if (array_key_exists("IssueDate",$param) and $param["IssueDate"] !== null) {
            $this->IssueDate = $param["IssueDate"];
        }

        if (array_key_exists("LOCAL",$param) and $param["LOCAL"] !== null) {
            $this->LOCAL = $param["LOCAL"];
        }

        if (array_key_exists("BackNumber",$param) and $param["BackNumber"] !== null) {
            $this->BackNumber = $param["BackNumber"];
        }

        if (array_key_exists("AdvancedInfo",$param) and $param["AdvancedInfo"] !== null) {
            $this->AdvancedInfo = $param["AdvancedInfo"];
        }

        if (array_key_exists("PortraitImage",$param) and $param["PortraitImage"] !== null) {
            $this->PortraitImage = $param["PortraitImage"];
        }

        if (array_key_exists("RequestId",$param) and $param["RequestId"] !== null) {
            $this->RequestId = $param["RequestId"];
        }
    }
}
